#include<stdio.h>
#include<unistd.h>	
#include<stdlib.h>
#include<sys/types.h> 
int main()
{
	//查看孤儿进程
       pid_t id = fork();
       if(id == 0)
      {
          int cnt = 500;
          while(cnt)
          {
              printf("i am a child,pid: %d,ppid:%d\n]",getpid(),getppid());
              sleep(1);
              cnt--;
          }
          exit(0);//让子进程直接退出
      }
      //父进程
	  int cnt = 5;
      while(cnt)
     {
		 cnt--;
          printf("i am a father, pid:%d,pptd:%d\n",getpid(),getppid());
          sleep(1);
     }

	//查看僵尸状态的代码
	//pid_t id = fork();
	//if(id == 0)
	//{
	//	int cnt = 5;
	//	while(cnt)
	//	{
	//		printf("i am a child,pid: %d,ppid:%d\n]",getpid(),getppid());
	//		sleep(1);
	//		cnt--;
	//	}
	//	exit(0);//让子进程直接退出
	//}
	//父进程
//	while(1)
//	{
//		printf("i am a father, pid:%d,pptd:%d\n",getpid(),getppid());
//		sleep(1);
//	}

	//int a = 0;
//	int b = 0;

	//printf("%d, %d\n",a,b);

	//查看T状态
	//while(1)
	//{
	//	printf("i am a process pid:%d",getpid());
	//	sleep(1);
	//}

	//查看S状态
	//int a = 0;
	//scanf("%d",&a);
	//printf("%d\n",a);
	
	//通过代码查看R状态
	//while(1)
	//{
	//	printf("i am a process\n");
	//	sleep(1);
	//}

	//测试进程等待键盘资源
	//int a = 0;
	//scanf("%d",&a);
	//printf("%d",a);
	return 0;
}
